package com.itheima3;

import com.ithema.Actor;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class Work02 {
    public static void main(String[] args) {
        ArrayList<String> team1 = new ArrayList<>();
        team1.add("陈玄风");
        team1.add("梅超风");
        team1.add("风清扬");
        team1.add("解风");
        team1.add("风波恶");
        team1.add("陆乘风");
        team1.add("曲灵风");
        team1.add("武眠风");
        team1.add("冯默风");
        team1.add("陆小风");

        // 队伍2
        ArrayList<String> team2 = new ArrayList<>();
        team2.add("宋远桥");
        team2.add("俞莲舟");
        team2.add("俞岱岩");
        team2.add("张松溪");
        team2.add("张翠山");
        team2.add("殷梨亭");
        team2.add("莫声谷");
  //      1、从第一个队伍中筛选出名字为3个字并且以“风”字结尾的人，筛选之后，只保留前6个。
        Stream<String> strs1 = team1.stream().filter(s -> s.length() == 3 && s.endsWith("风")).limit(6);


//        2、从第二个队伍中筛选出姓张的人员，筛选之后，不要第一个。
        Stream<String> skip = team2.stream().filter(s -> s.startsWith("张")).skip(1);

//        3、将两个筛选结果合并为一个队伍。
        Stream<String> concat = Stream.concat(strs1, skip);

//        4、将结果队伍中的字符串姓名作为Student对象的属性，创建Student对象，将集合中的元素都更改为Student类型。
        List<Student> list = concat.map(Student::new).collect(Collectors.toList());
//        5、打印结果队伍的Student对象信息
      list.forEach(System.out::println);




    }
}
